 # 使用Python 3.9作为基础镜像，平衡兼容性和功能性
FROM python:3.9-slim

# 设置工作目录
WORKDIR /app

# 安装系统依赖
RUN apt-get update && apt-get install -y \
    portaudio19-dev \
    python3-pyaudio \
    build-essential \
    && rm -rf /var/lib/apt/lists/*

# 复制依赖文件
COPY requirements-docker.txt .
COPY pyproject.toml .

# 升级pip并安装依赖，使用trusted-host参数解决网络问题
RUN pip install --upgrade pip && \
    pip install --no-cache-dir --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org -r requirements-docker.txt

# 复制源代码
COPY main.py .
COPY src/ ./src/

# 暴露端口
EXPOSE 8765

# 启动命令
CMD ["python", "main.py", "--websocket", "--ws-host", "0.0.0.0"]